
# 列表
"""
说明 ：属于有序序列 ，序列中的数可以进行增，删，查，修改。
列表的定义：
    变量名 = [元素1,元素2,...,元素n]
说明 ： 列表里面的元素是可以存放任意数据类型 ，而且列表的个数也是不受限制。
"""

# 1. 列表定义
alst = []
blst = [12,'abc',None]
print(alst)
print(blst)

# 2. 列表查询
clst = ['python','java','php','c','c++','go','ruby']
# 1) 通过索引获取 ：列表[索引]
print("获取clst中第4个元素:",clst[3])
print("获取clst中第6个元素:",clst[5])
# print("获取clst中第8个元素:",clst[7])  # 当索引超出列表的长度时会报错

# 2） 循环查询
for x in clst:
    print(x)


# 3.列表元素的修改 ：列表[索引] = 值
clst[2] = 'nodejs'
print(clst)


# 4. 列表中的方法
"""
list.index(obj)     : 从列表找出某个元素的位置(索引)
list.count(obj)     : 从列表中查询某个元素常出现的次数

list.insert(index,obj)  : 往列表的某个位置插入一个元素
list.append(obj)        : 向列表的最后位置追加一个元素
list.extend(seq)        : 将序列中的元素添加到该列表中

list.remove(obj)        : 从列表中删除某个元素
list.pop()              : 删除列表中的最后一个元素

list.sort()             : 给列表排序
list.reverse()         : 给列表进行翻转
list.copy()             :列表的拷贝

list.clear()            : 清空列表
"""

dlst = ['red','orange','black','green','write','red','red','red']
print("查找black在列表中的位置(索引)",dlst.index('black'))
print("查找red在列表中出现的次数:",dlst.count('red'))

print("向列表中索引为2的位置上插入:blue")
dlst.insert(2,'blue')
print(dlst)
print("向列表中添加一个元素abc")
dlst.append('abc')
print(dlst)

elst = ['xyz',123,'hello']
print("将elst中的元素添加到dlst中")
dlst.extend(elst)
print(dlst)

dlst.remove('xyz')
print("移除xyz后的列表:",dlst)

dlst.remove('red')
print("移除red后的列表:",dlst)

dlst.pop()
print("使用pop移除元素后的显示",dlst)

dlst.pop(1)
print("使用pop移除元素后的显示",dlst)

dlst.pop()

dlst.sort()
print("列表排序后的显示",dlst)

dlst.reverse()
print("列表翻转后的显示",dlst)

glst = dlst.copy()
print("拷贝出的新列表:",glst)

dlst.clear()
print("清除后的列表显示",dlst)
